package notifiers;

import java.text.MessageFormat;
import java.util.List;

import com.aton.db.Config;

import play.mvc.Mailer;
import vos.DeviceVo;
import vos.ShopVo;
import vos.SjbbVo;
import models.Shop;
import models.User;

/**
 * 邮件工具类
 * 
 * @ClassName: MailUtils 
 * @author: wangsm
 * @date: 2016年5月23日 上午10:26:26
 */
public class MailUtils extends Mailer {
	private static final String FROM = MessageFormat.format("【维极】 <{0}>", Config.getProperty("mail.smtp.user"));
	/**
	 * 发送每天超出上限设备邮件
	 *
	 * @Title: sendTodayEmail 
	 * @param devices 设备列表
	 * @param emails 收邮件人列表
	 * @return: void
	 */
	 public static void sendTodayEmail(List<SjbbVo> devices,String emails) {
	        try {
	            setSubject("今日数据上传数量超出限额的设备");
	            setFrom(FROM);
	            String[] email=emails.split(";");
	            for(int i=0;i<email.length;i++){
	            	addRecipient(email[i]);
	            }
	            send(devices);
	        } catch (Exception e) {
	        	e.printStackTrace();
	        }
	 }
	 /**
	  * 发送门店状态修改邮件
	  *
	  * @Title: ChangeShopStatus 
	  * @param shop 门店
	  * @param email 邮件
	  * @return: void
	  */
	 public static void ChangeShopStatus(ShopVo shop,String emails){
		 try {
	            setSubject("门店状态更改通知");
	            setFrom(FROM);
	            String[] email=emails.split(";");
	            for(int i=0;i<email.length;i++){
	            	addRecipient(email[i]);
	            }
	            send(shop);
	        } catch (Exception e) {
	        	e.printStackTrace();
	        }
	 }
	 /**
	  * 发送状态检查邮件
	  *
	  * @Title: sendDeviceStatus 
	  * @param notOkIds
	  * @param paramvalue
	  * @return: void
	  */
	public static void sendDeviceStatus(List<DeviceVo> notOkIds, String emails) {
		// TODO Auto-generated method stub
		try {
            setSubject("今日未上传数据");
            setFrom(FROM);
            String[] email=emails.split(";");
            for(int i=0;i<email.length;i++){
            	addRecipient(email[i]);
            }
            send(notOkIds);
        } catch (Exception e) {
        	e.printStackTrace();
        }
	}
}
